package com.yserp.project.erp.store.outorder.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.yserp.project.erp.store.outorder.domain.OutOrderItem;
import com.yserp.project.erp.store.outorder.domain.OutOrderItemVo;

import java.util.List;


/**
 * 商品出库单子Service接口
 *
 * @author yserp
 * @date 2022-07-13
 */
public interface IOutOrderItemService extends IService<OutOrderItem> {

    /**
     * 查询商品出库单子列表
     *
     * @param outOrderItem 商品出库单子
     * @return 商品出库单子集合
     */
    public List<OutOrderItem> selectOutOrderItemList(OutOrderItem outOrderItem);

    /**
     * 查询商品出库单子列表
     *
     * @param id 主表ID
     * @return 商品出库单子集合
     */
    public List<OutOrderItem> selectOutOrderItemListByMainId(Long id);

    /**
     * 通过仓库以及单据获取出库单子表信息
     * @param sourceOrderId
     * @param orderType
     * @param warehouseId
     * @return
     */
    public List<OutOrderItemVo> selectOutOrderItemListByParam(Long sourceOrderId, String orderType, Long warehouseId);

    /**
     * 通过订单号获取子表列表，便于页面显示库存信息
     * @param orderId
     * @param warehouseId
     * @return
     */
    public List<OutOrderItemVo>  selectOutOrderItemListByGoodIdAndWarehouseId(Long orderId,Long warehouseId);
}
